package edu.princeton.cogsci.wn;

/** This interface encapsulates commonly used WordNet constants. */

public interface Constants
{
  public static final int SEMANTIC = 0;

  public static final int ANY_POS = 0;
  public static final int NOUN = 1;
  public static final int VERB = 2;
  public static final int ADJECTIVE = 3;
  public static final int ADVERB = 4;
  public static final int SATELLITE = 5;

  public static final int ANY_RELATION = 0;
  public static final int ANTONYM = 1;
  public static final int HYPERNYM = 2;
  public static final int HYPONYM = 3;
  public static final int ENTAILS = 4;
  public static final int SIMILAR_TO = 5;
  public static final int IS_MEMBER_OF = 6;
  public static final int IS_STUFF_OF = 7;
  public static final int IS_PART_OF = 8;
  public static final int HAS_MEMBER = 9;
  public static final int HAS_STUFF = 10;
  public static final int HAS_PART = 11;
  public static final int MERONYM = 12;
  public static final int HOLONYM = 13;
  public static final int CAUSE_TO = 14;
  public static final int PARTICIPLE = 15;
  public static final int SEE_ALSO = 16;
  public static final int PERTAINYM = 17;
  public static final int ATTRIBUTE = 18;
  public static final int VERBGROUP = 19;

  public static final int ALL_SENSES = 0;

  public static final char[] posChars = { '*', 'n', 'v', 'a', 'r', 's' };
  public static final String[] posStrings = {
    "Any", "Noun", "Verb", "Adjective Head", "Adverb", "Adjective Satellite"
  };
  public static final String[] posSymbols = {
    "any", "n", "v", "adj", "adv", "sat"
  };

  public static final String[] relationAbbrevs = {
    "",
    "ant",
    "hpr",
    "hpo",
    "ent",
    "sim",
    "mem",
    "stf",
    "prt",
    "hmm",
    "hsf",
    "hpr",
    "mer",
    "hol",
    "cas",
    "ptp",
    "see",
    "per",
    "att",
    "vrb",
    "-ate",
    "-ify",
    "-ise/ize",
    "-acy",
    "-age",
    "-al",
    "-ance/ence",
    "-ancy/ency",
    "-ant/ent",
    "-ard",
    "-ary",
    "-ate",
    "-ation",
    "-ee",
    "-er",
    "-ery/ry",
    "-ing/ings",
    "-ion",
    "-ist",
    "-ment",
    "-or",
    "-ure",
    "nominalization"
  };

  public static final String[] relationNames = {
    "",
    "antonym",
    "hypernym",
    "hyponym",
    "entails",
    "similar to",
    "is member of",
    "is stuff of",
    "is part of",
    "has member",
    "has stuff",
    "has part",
    "meronym",
    "holonym",
    "causes to",
    "participle of",
    "see also",
    "pertainym",
    "attribute",
    "verb group",
    "-ate",
    "-ify",
    "-ise/ize",
    "-acy",
    "-age",
    "-al",
    "-ance/ence",
    "-ancy/ency",
    "-ant/ent",
    "-ard",
    "-ary",
    "-ate",
    "-ation",
    "-ee",
    "-er",
    "-ery/ry",
    "-ing/ings",
    "-ion",
    "-ist",
    "-ment",
    "-or",
    "-ure",
    "nominalization"
  };

  public static final String[] relationSymbols = {
    "",				/* 0 not used */
    "!",			/* 1 ANTPTR */
    "@",			/* 2 HYPERPTR */
    "~",			/* 3 HYPOPTR */
    "*",			/* 4 ENTAILPTR */
    "&",			/* 5 SIMPTR */
    "#m",			/* 6 ISMEMBERPTR */
    "#s",			/* 7 ISSTUFFPTR */
    "#p",			/* 8 ISPARTPTR */
    "%m",			/* 9 HASMEMBERPTR */
    "%s",			/* 10 HASSTUFFPTR */
    "%p",			/* 11 HASPARTPTR */
    "%",			/* 12 MERONYM */
    "#",			/* 13 HOLONYM */
    ">",			/* 14 CAUSETO */
    "<",			/* 15 PPLPTR */
    "^",			/* 16 SEEALSO */
    "\\",			/* 17 PERTPTR */
    "=",			/* 18 ATTRIBUTE */
    "$",			/* 19 VERBGROUP */
    "+a",
    "+b",
    "+c",
    "+d",
    "+e",
    "+f",
    "+g",
    "+h",
    "+i",
    "+j",
    "+k",
    "+l",
    "+m",
    "+n",
    "+o",
    "+p",
    "+q",
    "+r",
    "+s",
    "+t",
    "+u",
    "+v",
    "+w",
    "+x"
  };
}



